/**
 * [description]
 * @returns {[type]} [description]
 */

 
function* fn () {
    let a = yield 1;
    console.log(a);
    const b = yield 2;
    console.log(b);
    a = yield 3;
    console.log(a);
    return b;
}

let gen = fn();

for( let v of gen) {
    console.log(v);
}